Information Disclosure

Information Disclosure Nedir Nasıl Test Edilir?

Bilginin açığa çıkması anlamına gelen bu zafiyet bir web sitesinde herhangi bir yapı bozukluğu ya da eksikliği yüzünden saldırgana kullanıcı bilgileri, şirkete ait veriler veya web sitesinin kullandığı uygulamalar ve bu uygulamaların mevcut sürümleri gibi bilgilerin açığa çıkması bu zafiyetin olduğu anlamına gelir. Bu zafiyeti web sitesinin hatalarında veya bulunan dosyalarda da görmek mümkündür. Örnek verelim web sitesinde farklı girdiler girerek denemeler yaptığımızı düşünün bazı sitelerde 404 not found hatasının altında Apache versiyon bilgisinin de çıktığını görmek mümkün. Bu versiyon bilgisi 2.4.50 olduğunu varsayalım işte bu kısımda bir zafiyet açıkça söz konusu bu versiyon bilgisinden bir zafiyet araştırması yapabiliriz. 

https://www.exploit-db.com/exploits/50512 bu adreste 2.4.50 versiyonuna yönelik bir exploit bulunmakta. Yani information disclosure zafiyetinden edindiğimiz bir bilgi bizie uzaktan kod yürütmeyi sağlayabilmekte.

Test edilme aşaması direkt olarak ortaya çıkmayabilir. Yani bir sitede belli dizinlerinde Directory Traversal açığı olabilir bu açık sayesinde dizinlerdeki dosyaları inceleyebiliriz bu dosyaların içinde kullanılan uygulamalar ve sürümleri hakkında bilgi elde etmek mümkün. Test sırasında karşımıza çıkan hata sayfalarında çıkma ihtimali olabilir. Veya BurpSuite üzerinde paketleri manipüle ederek karşımıza çıkması mümkün olabilir.

 

Şimdi PortSwigger üzerinden birkaç labaratuvar çözerek daha anlaşılır hale getirelim.

image

Burada kullanılan  framework versiyonunun geçmiş versiyon olduğunu bulmamızı istemiş.

image

Url kısmında bir productId parametresini görüyoruz. Bu parametreye muhtemelen olmayacak bir değer girdiğimizde muhtemelen bir hata alacağız ve random bir değer giriyoruz.

 image

Ve karşımıza aşağıdaki gibi bir sürüm bilgisi içeren bir hata sayfası çıkıyor.

image

Bu bilgiyi labaratuvara submit ediyoruz.

image

image

Bu şekilde çözmüş ve sürüm bilgisi elde etmiş olduk bu sürümle ilgili bir zafiyet taraması yapılabilir çeşitli saldırılar denenilebilir.

 

Bir diğer labaratuvarına geçelim:

image

Burada hassas bilgiler içeren uygulama mevcut diyor ve SECRET_KEY değerini submit etmemizi istiyor.

image

Yukarıdaki response kodlarında yorum satırı haline getirilmiş bir sayfa görüyoruz. Normalde kullanılmayan sayfaların ileride zarar verme ihtimaline karşılık kapatılmış olması yani saldırganın haberdar olmaması ulaşamaması gerekir. Biz bu sayfaya gitmek istiyoruz.

image

Ve yukarıdaki sayfa ile karşılaştık. Aslında bu sayfa bile direkt olarak zafiyeti tehlikeli hale getirebilmekte. Biz SECRET_KEY anahtarını bulmak için geçerli paketi inceliyoruz.

image

Ve SECRET_KEY e ulaşmayı başardık. Submit ediyoruz.

image

 

 

Peki Gerçek Web Sitelerinde Laboratuvarlardaki Gibi Çıkar Mı?

Evet mümkün. Bu zafiyetler ile herhangi bir güvenlik açığı testini yaparken de karşılaşabiliriz. Etkisi bazen büyük ölçüde olabilir. Uzaktan kod yürütme zafiyetine neden olabilir.

Birkaç Örnek Information Disclosure Raporları

https://hackerone.com/reports/990048 

https://hackerone.com/reports/1423704

https://hackerone.com/reports/864712